/** \file
 *	\brief Utilities to initialize a run.
 */

#ifndef MDS_RUN_INCLUDED
#define MDS_RUN_INCLUDED 1

#include "./dynamics.h"
#include "./sys/rand.h"
#include "./sys/wtime.h"
#include "./step/verlet.h"
#include "./step/beeman.h"
#include "../mds/lj.h"
#include "../mds/lj-cutoff.h"
#include "./ini/crystal.h"
#include "./io/options.h"

/**	\brief
 *	prepare wtime/random...
 */
void mds_run_initialize(void);

typedef enum
{
	MDS_STEP_VERLET,
	MDS_STEP_BEEMAN
} mds_step_type;

typedef enum
{
	MDS_POTENTIAL_LJ,
	MDS_POTENTIAL_LJCUTOFF
} mds_potential_type;

typedef enum
{
	MDS_MASS_1,
	MDS_MASS_ALEA
} mds_mass_type;

typedef enum
{
	MDS_UNITS_REAL,
	MDS_UNITS_ADIM
} mds_units_type;

#endif
